package com.dongdongshop.service.impl;
import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.DefaultProfile;
import com.dongdongshop.mapper.TbUserMapper;
import com.dongdongshop.pojo.TbUser;
import com.dongdongshop.service.TbUserService;
import org.apache.commons.lang3.RandomStringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
@com.alibaba.dubbo.config.annotation.Service
public class TbUserServiceImpl  implements TbUserService {
    @Autowired
    private TbUserMapper tbUserMapper;
    public static void main(String[] args) {
        DefaultProfile profile = DefaultProfile.getProfile("cn-beijing",
                "LTAI4GCbdwnjCGwQj9Z3tr3N", "27ih4pc1W1tqey9X4mmCy1JUotAX7L");
        /** use STS Token
         DefaultProfile profile = DefaultProfile.getProfile(
         "<your-region-id>",           // The region ID
         "<your-access-key-id>",       // The AccessKey ID of the RAM account
         "<your-access-key-secret>",   // The AccessKey Secret of the RAM account
         "<your-sts-token>");          // STS Token
         **/
        IAcsClient client = new DefaultAcsClient(profile);

        CommonRequest request = new CommonRequest();
        //请求方式必须是post原始是因为post安全
        request.setSysMethod(MethodType.POST);
        //调用阿里大于发送短信的域名
        request.setSysDomain("dysmsapi.aliyuncs.com");
        //版本号
        request.setSysVersion("2017-05-25");
        //发送短信的功能
        request.setSysAction("SendSms");
        //接收放手机号
        request.putQueryParameter("PhoneNumbers","17625505218");
        //签名
        request.putQueryParameter("SignName","东科创想");
        //短信模板
        request.putQueryParameter("TemplateCode", "SMS_162522027");
        String numeric = RandomStringUtils.randomNumeric(6);
        request.putQueryParameter("TemplateParam", "{'sms_code':'"+numeric+"'}");
//        StringUtils.isBlank()  判断非空的时候用
        try {
            CommonResponse response = client.getCommonResponse(request);
            System.out.println(response.getData());
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            e.printStackTrace();
        }
    }
    @Override
    public TbUser selectById(String username) {
         TbUser tbUser = tbUserMapper.selectByusername(username);
        return tbUser;
    }

    @Override
    public void addAll(TbUser user) {
        tbUserMapper.insertSelective(user);
    }
}
